/* $Id: GeometryModel.java 63 2010-02-14 13:52:34Z aaron.day $ */
package org.crazydays.gameplan.map.swing;


import org.crazydays.gameplan.map.Geometry;

/**
 * GeometryModel
 */
public class GeometryModel
{
    /** geometry */
    protected Geometry geometry;

    /** grid type model */
    protected GridTypeModel gridTypeModel;

    /** grid size model */
    protected GridSizeModel gridSizeModel;

    /** height model */
    protected HeightModel heightModel;

    /** width model */
    protected WidthModel widthModel;

    /**
     * GeometryModel constructor.
     * 
     * @param geometry Geometry
     */
    public GeometryModel(Geometry geometry)
    {
        this.geometry = geometry;
        this.gridTypeModel = new GridTypeModel(geometry);
        this.gridSizeModel = new GridSizeModel(geometry);
        this.heightModel = new HeightModel(geometry);
        this.widthModel = new WidthModel(geometry);
    }

    /**
     * Get grid type model.
     * 
     * @return Model
     */
    public GridTypeModel getGridTypeModel()
    {
        return gridTypeModel;
    }

    /**
     * Get grid size model.
     * 
     * @return Model
     */
    public GridSizeModel getGridSizeModel()
    {
        return gridSizeModel;
    }

    /**
     * Get height model.
     * 
     * @return Model
     */
    public HeightModel getHeightModel()
    {
        return heightModel;
    }

    /**
     * Get width model.
     * 
     * @return Model
     */
    public WidthModel getWidthModel()
    {
        return widthModel;
    }
}
